package cn.gov.service;

import cn.gov.vo.PersonRole;
import cn.gov.vo.PersonalServiceStation;
import cn.geracomium.util.web.Page;
import cn.gov.vo.Role;
import cn.gov.vo.RoleAction;

import java.util.List;
import java.util.Map;

public interface IAuthService {
	public List<Role> list() ;
	public boolean addPersonStationAndRole(PersonalServiceStation personalServiceStation, PersonRole personRole) ;

    /**
     * 删除角色
     *
     * @param roleId
     * @return
     */
    Integer delRole(int roleId);

    /**
     * 实现角色条件查询分页
     *
     * @param conditionMap
     * @param pageNumber
     * @return
     */
    Page<Role> roleList(Map<String, Object> conditionMap, int pageNumber);

    /**
     * 实现一个用户授权信息的获取，可以抓取角色与权限信息
     *
     * @param accountId 用户的accountId
     * @return 包含有如下内容：
     * 1、key = role、value = 全部的角色信息；
     * 2、key = roleActionList、value = 全部的权限信息。
     */
    Map<String, Object> listByPersonalRole(Long accountId);

    /**
     * 增加角色
     *
     * @param role
     * @param roleActionList
     * @return
     */
    Boolean addRole(Role role, List<RoleAction> roleActionList);
}
